package com.jwds.digital.bios.business.core.infrastructure.vo.belt;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 线路效能周表
 *
 * @author
 * @date 2024-10-24
 */
@Data
@ApiModel(value="BeltRoutePerformanceWeek返回数据对象")
public class BeltRoutePerformanceWeekRespVO  {

  @ApiModelProperty(value = "主键Id")
  private Long id;

  @ApiModelProperty(value = "路线id")
  private Long routeId;

  @ApiModelProperty(value = "平均负载率")
  private BigDecimal avgLoadRate;

  @ApiModelProperty(value = "平均空负载率")
  private BigDecimal avgNoLoadRate;

  @ApiModelProperty(value = "负载率占比")
  private BigDecimal loadRateRatio;

  @ApiModelProperty(value = "作业率")
  private BigDecimal workRate;

  @ApiModelProperty(value = "作业效率")
  private BigDecimal workEfficiency;

  @ApiModelProperty(value = "空载电耗")
  private BigDecimal noLoadPowerConsumption;

  @ApiModelProperty(value = "启动空转电耗")
  private BigDecimal startNoLoadPowerConsumption;

  @ApiModelProperty(value = "停止空转电耗")
  private BigDecimal endNoLoadPowerConsumption;

  @ApiModelProperty(value = "负载电耗")
  private BigDecimal loadPowerConsumption;

  @ApiModelProperty(value = "空载运行时间")
  private BigDecimal noLoadRuntime;

  @ApiModelProperty(value = "负载运行时间")
  private BigDecimal loadRuntime;

  @ApiModelProperty(value = "尖峰耗电量")
  private BigDecimal spikePowerConsumption;

  @ApiModelProperty(value = "峰值耗电量")
  private BigDecimal peakPowerConsumption;

  @ApiModelProperty(value = "谷值耗电量")
  private BigDecimal valleyPowerConsumption;

  @ApiModelProperty(value = "平值耗电量")
  private BigDecimal flatPowerConsumption;

  @ApiModelProperty(value = "总耗电量")
  private BigDecimal totalPowerConsumption;

  @ApiModelProperty(value = "数据所属时间")
  
  private LocalDate belongDate;

  @ApiModelProperty(value = "创建人")
  private String createUser;

  @ApiModelProperty(value = "启动空载开始时间")
  @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
  private LocalDateTime startTime;

  @ApiModelProperty(value = "启动空载结束时间")
  @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
  private LocalDateTime endTime;

  @ApiModelProperty(value = "启动空载结束时间")
  @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
  private LocalDateTime startEmptyTime;

  @ApiModelProperty(value = "停止空载结束时间")
  @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
  private LocalDateTime endEmptyTime;

  @ApiModelProperty(value = "运行时间")
  private BigDecimal allRuntime;

  @ApiModelProperty(value = "创建时间")
  
  private LocalDateTime createTime;

  @ApiModelProperty(value = "更新人")
  private String modifyUser;

  @ApiModelProperty(value = "更新时间")
  
  private LocalDateTime modifyTime;

  @ApiModelProperty(value = "逻辑删除:0-未删除,1-已删除")
  private Integer isDeleted;

  @ApiModelProperty(value = "总吨量")
  private BigDecimal totalTransport;

  @ApiModelProperty(value = "运行效率")
  private BigDecimal operationEfficiency;

  @ApiModelProperty(value = "平均电机运行效率")
  private List<AverageMotorOperatingEfficiencyStats> AverageMotorOperatingEfficiencyStats;

  @ApiModelProperty(value = "电机运行效率")
  private Integer averageMotorOperatingEfficiency;

  /***********扩展字段***************/
  @ApiModelProperty(value = "负载率,空负载率,作业效率")
  private List<LoadRateAndWorkingEfficiency> loadRateAndWorkingEfficiencyList;

  @ApiModelProperty(value = "运行中空转时间")
  private BigDecimal idleTimeInOperation;

  @ApiModelProperty(value = "启动空转时间")
  private BigDecimal startIdleTimeInOperation;

  @ApiModelProperty(value = "结束空转时间")
  private BigDecimal endIdleTimeInOperation;

  @ApiModelProperty(value = "运行中空载能耗")
  private BigDecimal idleEnergyInOperation;

  @ApiModelProperty(value = "启动空转时间占比")
  private BigDecimal startIdleTimeConsumptionRatio;

  @ApiModelProperty(value = "启动空转能耗占比")
  private BigDecimal startIdleEnergyConsumptionRatio;

  @ApiModelProperty(value = "停止空转时间占比")
  private BigDecimal endIdleTimeConsumptionRatio;

  @ApiModelProperty(value = "停止空转能耗占比")
  private BigDecimal endIdleEnergyConsumptionRatio;

  @ApiModelProperty(value = "运行中空转时间占比")
  private BigDecimal inOperationIdleTImeConsumptionRatio;

  @ApiModelProperty(value = "运行中空转能耗占比")
  private BigDecimal inOperationIdleEnergyConsumptionRatio;

  @ApiModelProperty(value = "合格线")
  private BigDecimal qualifiedLine;


}
